{mapfactory}
ad-discretisation.Rmd
Afin de réaliser les cartes, nous avons besoin de pouvoir discrétiser nos données. Aucunes fonctions disponibles dans les packages que nous connaissons ne permet de réaliser ce que nous avions besoins :
pouvoir discréditer une variable numérique soit manuellement avec des bornes, soit automatiquement à partir d’une méthode
obtenir un libellé des modalités clair et prêt à l’utilisation.
Nous avons donc construit, dans le package mapfactory
une fonction discretiser()
qui se base sur
cartography::getBreaks()
et
santoku::chop()
.
Pour discrétiser la variable, nous pouvons lui donner des bornes manuelles.
## Error in get(paste0(generic, ".", class), envir = get_method_env()) :
## object 'type_sum.accel' not found
set.seed(123)
num <- rnorm(1000, sd = 10)
d <- discretiser(v = num, bornes = c(-10, -2, 0, 2, 10), decimales = 1)
levels(d)
## [1] "Inférieur à -10,0" "De -10,0 à -2,0" "De -2,0 à 0,0"
## [4] "De 0,0 à 2,0" "De 2,0 à 10,0" "Supérieur à 10,0"
Il est possible aussi d’indiquer dans les bornes les mins et max du vecteur discrétisé :
d <- discretiser(num, bornes = c(-10, -2, 0, 2, 10), garder_borne_max = TRUE, decimales = 0)
levels(d)
## [1] "De -28 à -10" "De -10 à -2" "De -2 à 0" "De 0 à 2" "De 2 à 10"
## [6] "De 10 à 32"
Nous pouvons aussi lui donner une méthode de discrétisation
d <- discretiser(num, method = "quantile")
levels(d)
## [1] "Inférieur à -7,9" "De -7,9 à -2,1" "De -2,1 à 2,4" "De 2,4 à 8,4"
## [5] "Supérieur à 8,4"
Enfin, il est possible d’afficher un libellé au format pourcentage ou avec un suffixe
d <- discretiser(num, method = "quantile", pourcent = TRUE)
levels(d)
## [1] "Inférieur à -7,9 %" "De -7,9 % à -2,1 %" "De -2,1 % à 2,4 %"
## [4] "De 2,4 % à 8,4 %" "Supérieur à 8,4 %"
e <- discretiser(abs(num*100), method = "quantile", suffixe = " logements", decimales = 0)
levels(e)
## [1] "Inférieur à 227 logements" "De 227 à 498 logements"
## [3] "De 498 à 826 logements" "De 826 à 1 265 logements"
## [5] "Supérieur à 1 265 logements"
Tous les paramètres de la fonction
mapfactory::discretiser()
, commebornes
,decimales
,pourcent
,suffixe
,garder_borne_max
oumethod
se propagent aux fonctions de création de carte de{propre.rpls}
, c’est à dire qu’ils sont utilisables directement dans les fonctionscreer_carte_x_y(..., method = "quantile", suffixe = " logements", decimales = 0)
.